package settings

import (
	"fmt"
	"github.com/fsnotify/fsnotify"
	"github.com/spf13/viper"
)

func Init() (err error) {
	viper.SetConfigName("config") //指定配置文件名称（不需要带后缀）
	viper.SetConfigType("yaml")   //指定配置文件类型
	viper.AddConfigPath(".")      //指定查找配置文件的路径（这里是用的相对路径）
	err = viper.ReadInConfig()    //读取配置文件（记住这个方法里边有in这俩字母）
	if err != nil {
		fmt.Printf("ReadInConfig failed,err:%v\n", err)
		return
	}
	viper.WatchConfig()                            //监控配置文件变化（实时热加载）
	viper.OnConfigChange(func(in fsnotify.Event) { //回调函数，用于每次配置文件修改了后重新调用一次
		fmt.Println("配置文件修改了。。。")
	})
	return
}
